package com.xiaoqi.store.dao;

import com.xiaoqi.store.entity.CartEntity;
import com.xiaoqi.store.entity.CartVO;
import com.xiaoqi.store.entity.ProductEntity;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @Author Rookie Coder
 * @Description 购物车持久层接口
 * @Date
 **/
public interface CateMapper {

    /*
     * @Author xiaoqi
     * @Description 查询商品是否存在
     * @return
     **/
    ProductEntity selectProductIsExist(Integer pid,Integer uid);

    /*
    * @Author xiaoqi
    * @Description  添加商品到用户购物车
    * @return
    **/
    int addProductToUserCate(CartEntity cartEntity);

    /*
    * @Author xiaoqi
    * @Description  修改购物车中商品的数量
    * @return
    **/
   int updateUserCartProductMount(Integer pid,Integer amount);

   /*
   * @Author xiaoqi
   * @Description  根据用户id查询所有的购物车记录
   * @return
   **/
    List<CartVO> selectUserAllCartsByUid(Integer uid);

    /*
    * @Author xiaoqi
    * @Description  删除购物车
    * @return
    **/
    int deleteUserCartByCid(Integer cid,Integer uid);

    /*
    * @Author xiaoqi
    * @Description  根据cid查询购物车商品信息
    * @return
    **/
    CartVO selectProductIsExistByCid(Integer cid);

    /**
     * 根据若干个购物车数据id查询详情的列表
     * @param cids 若干个购物车数据id
     * @return 匹配的购物车数据详情的列表
     */
    List<CartVO> findVOByCids(Integer[] cids);
}
